<template>
  <div class="todo-header">
    <input type="text" placeholder="请输入你的任务名称，按回车键确认"
           v-model="inputTodo" @keyup.enter="add"/>
  </div>
</template>

<script>
export default {

  data() {
    return {
      inputTodo: '' // 组件内部使用的状态，不存在共享问题-->不需要vuex管理他
    }
  },
  methods: {
    add() {
      // 1.检查输入的合法性
      const inputTodo = this.inputTodo.trim()
      if (!inputTodo) {
        return
      }

      // 2.根据输入生成一个todo对象
      const todo = {
        title: inputTodo,
        complete: false
      }

      // 3.将todo对象添加到todos
      this.$store.dispatch(`addTodo`, todo)

      // 4.清除输入
      this.inputTodo = ''
    }
  }
}

</script>

<style>
.todo-header input {
  width: 560px;
  height: 28px;
  font-size: 14px;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 4px 7px;
}

.todo-header input:focus {
  outline: none;
  border-color: rgba(82, 168, 236, 0.8);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
}
</style>
